package com.yingjie.yingjiefile.model;

import java.io.Serializable;
import java.util.Date;

/**
 * 
 * @TableName public_files
 */
public class PublicFiles implements Serializable {
    /**
     * 
     */
    private Integer publicFilesId;

    /**
     * 
     */
    private String fileUrl;

    /**
     * image/video
     */
    private String type;

    /**
     * 文件后缀：png、MP3、MP4、excle等等等
     */
    private String fileSuffix;

    /**
     * 视频或音频的 时长
     */
    private Integer duration;

    /**
     * 文件大小
     */
    private Double size;

    /**
     * 
     */
    private Double height;

    /**
     * 
     */
    private Double width;

    /**
     * 
     */
    private Date createdAt;

    private static final long serialVersionUID = 1L;

    /**
     * 
     */
    public Integer getPublicFilesId() {
        return publicFilesId;
    }

    /**
     * 
     */
    public void setPublicFilesId(Integer publicFilesId) {
        this.publicFilesId = publicFilesId;
    }

    /**
     * 
     */
    public String getFileUrl() {
        return fileUrl;
    }

    /**
     * 
     */
    public void setFileUrl(String fileUrl) {
        this.fileUrl = fileUrl;
    }

    /**
     * image/video
     */
    public String getType() {
        return type;
    }

    /**
     * image/video
     */
    public void setType(String type) {
        this.type = type;
    }

    /**
     * 文件后缀：png、MP3、MP4、excle等等等
     */
    public String getFileSuffix() {
        return fileSuffix;
    }

    /**
     * 文件后缀：png、MP3、MP4、excle等等等
     */
    public void setFileSuffix(String fileSuffix) {
        this.fileSuffix = fileSuffix;
    }

    /**
     * 视频或音频的 时长
     */
    public Integer getDuration() {
        return duration;
    }

    /**
     * 视频或音频的 时长
     */
    public void setDuration(Integer duration) {
        this.duration = duration;
    }

    /**
     * 文件大小
     */
    public Double getSize() {
        return size;
    }

    /**
     * 文件大小
     */
    public void setSize(Double size) {
        this.size = size;
    }

    /**
     * 
     */
    public Double getHeight() {
        return height;
    }

    /**
     * 
     */
    public void setHeight(Double height) {
        this.height = height;
    }

    /**
     * 
     */
    public Double getWidth() {
        return width;
    }

    /**
     * 
     */
    public void setWidth(Double width) {
        this.width = width;
    }

    /**
     * 
     */
    public Date getCreatedAt() {
        return createdAt;
    }

    /**
     * 
     */
    public void setCreatedAt(Date createdAt) {
        this.createdAt = createdAt;
    }

    @Override
    public boolean equals(Object that) {
        if (this == that) {
            return true;
        }
        if (that == null) {
            return false;
        }
        if (getClass() != that.getClass()) {
            return false;
        }
        PublicFiles other = (PublicFiles) that;
        return (this.getPublicFilesId() == null ? other.getPublicFilesId() == null : this.getPublicFilesId().equals(other.getPublicFilesId()))
            && (this.getFileUrl() == null ? other.getFileUrl() == null : this.getFileUrl().equals(other.getFileUrl()))
            && (this.getType() == null ? other.getType() == null : this.getType().equals(other.getType()))
            && (this.getFileSuffix() == null ? other.getFileSuffix() == null : this.getFileSuffix().equals(other.getFileSuffix()))
            && (this.getDuration() == null ? other.getDuration() == null : this.getDuration().equals(other.getDuration()))
            && (this.getSize() == null ? other.getSize() == null : this.getSize().equals(other.getSize()))
            && (this.getHeight() == null ? other.getHeight() == null : this.getHeight().equals(other.getHeight()))
            && (this.getWidth() == null ? other.getWidth() == null : this.getWidth().equals(other.getWidth()))
            && (this.getCreatedAt() == null ? other.getCreatedAt() == null : this.getCreatedAt().equals(other.getCreatedAt()));
    }

    @Override
    public int hashCode() {
        final int prime = 31;
        int result = 1;
        result = prime * result + ((getPublicFilesId() == null) ? 0 : getPublicFilesId().hashCode());
        result = prime * result + ((getFileUrl() == null) ? 0 : getFileUrl().hashCode());
        result = prime * result + ((getType() == null) ? 0 : getType().hashCode());
        result = prime * result + ((getFileSuffix() == null) ? 0 : getFileSuffix().hashCode());
        result = prime * result + ((getDuration() == null) ? 0 : getDuration().hashCode());
        result = prime * result + ((getSize() == null) ? 0 : getSize().hashCode());
        result = prime * result + ((getHeight() == null) ? 0 : getHeight().hashCode());
        result = prime * result + ((getWidth() == null) ? 0 : getWidth().hashCode());
        result = prime * result + ((getCreatedAt() == null) ? 0 : getCreatedAt().hashCode());
        return result;
    }

    @Override
    public String toString() {
        StringBuilder sb = new StringBuilder();
        sb.append(getClass().getSimpleName());
        sb.append(" [");
        sb.append("Hash = ").append(hashCode());
        sb.append(", publicFilesId=").append(publicFilesId);
        sb.append(", fileUrl=").append(fileUrl);
        sb.append(", type=").append(type);
        sb.append(", fileSuffix=").append(fileSuffix);
        sb.append(", duration=").append(duration);
        sb.append(", size=").append(size);
        sb.append(", height=").append(height);
        sb.append(", width=").append(width);
        sb.append(", createdAt=").append(createdAt);
        sb.append(", serialVersionUID=").append(serialVersionUID);
        sb.append("]");
        return sb.toString();
    }
}